Method and user equipment for predicting available throughput for uplink data

ABSTRACT

A method in a user equipment for predicting an available throughput for uplink data to be sent from the user equipment to a base station over a radio link. The user equipment obtains (201) an information about a past scheduling of the user equipment. The user equipment obtains (202) a radio quality measure related to the radio link. The user equipment predicts (204) the available throughput based on a relationship between the information about a past scheduling of the user equipment and one or more previously obtained pieces of information about the past scheduling of the user equipment. The user equipment predicts the available throughput further based on a relationship between the radio quality measure and of one or more previously obtained radio quality measures. The user equipment predicts the available throughput further based on a previously obtained throughput. The previously obtained throughput is associated with the one or more previously obtained pieces of information about a past scheduling and the one or more previously obtained radio quality measures.

TECHNICAL FIELD

Embodiments herein relate to a user equipment and a method therein. Inparticular, they relate to throughput for uplink data.

BACKGROUND

Communication devices such as User Equipments (UE) are also known ase.g. mobile terminals, wireless terminals and/or mobile stations. Userequipments are enabled to communicate wirelessly in a wirelesscommunications network, sometimes also referred to as a wirelesscommunication system, a cellular communications network, a cellularradio system or a cellular network. The communication may be performede.g. between two user equipments, between a user equipment and a regulartelephone and/or between a user equipment and a server via a RadioAccess Network (RAN) and possibly one or more core networks, comprisedwithin the cellular communications network.

User equipments may further be referred to as mobile telephones,cellular telephones, laptops, or surf plates with wireless capability,just to mention some further examples. The user equipments in thepresent context may be, for example, portable, pocket-storable,hand-held, computer-comprised, or vehicle-mounted mobile devices,enabled to communicate voice and/or data, via the RAN, with anotherentity, such as another user equipment or a server.

The wireless communications network covers a geographical area which isdivided into cell areas, wherein each cell area is served by a basestation, e.g. a Radio Base Station (RBS), which sometimes may bereferred to as e.g. “eNB”, “eNodeB”, “NodeB” or “B node” depending onthe technology and terminology used. The base stations may be ofdifferent classes such as e.g. macro eNodeB, home eNodeB or pico basestation, based on transmission power and thereby also cell size. A cellis the geographical area where radio coverage is provided by the basestation at a base station site. One base station, situated on the basestation site, may serve one or several cells. Further, each base stationmay support one or several communication technologies. The base stationscommunicate over the air interface operating on radio frequencies withthe user equipments within range of the base stations. In the context ofthis disclosure, the expression Downlink (DL) is used for thetransmission path from the base station to the user equipment. Theexpression Uplink (UL) is used for the transmission path in the oppositedirection i.e. from the user equipment to the base station.

3GPP LTE radio access standard has been written in order to support highbitrates and low latency both for uplink and downlink traffic. All datatransmission is in LTE is controlled by the radio base station.

When a user equipment wants to initiate a data transmission in awireless communications network, either by starting a new servicesession after input from a user, such as viewing a webpage, download afile, etc. or by a background process such as automatic software update,or user equipment data backup, no information about the availablethroughput for uplink data is provided by the network.

This may lead to network congestion as all user equipments regardless ofthe available throughput just starts data transmission, althoughcongestion control is taken in upper layers such as Transmission ControlProtocol, TCP. In addition, the initiated session may receive poorperformance due to the offered low throughput, for example starting avideo conference even though the available throughput is far less thansatisfactory.

SUMMARY

It is therefore an object of embodiments hereinto provide an improvedway of predicting an available throughput for uplink data to be sentfrom a user equipment in a wireless communications network.

According to a first aspect of embodiments herein, the object isachieved by a method in a user equipment for predicting an availablethroughput for uplink data to be sent from the user equipment to a basestation over a radio link in a wireless communications network. Theavailable throughput is provided by the communications network to theuser equipment. The user equipment obtains an information about a pastscheduling of the user equipment.

The user equipment further obtains a radio quality measure related tothe radio link.

The user equipment then predicts the available throughput based on:

-   -   a relationship between the information about a past scheduling        of the user equipment and one or more previously obtained pieces        of information about the past scheduling of the user equipment,    -   a relationship between the radio quality measure and one or more        previously obtained radio quality measures, and    -   a previously obtained throughput of uplink data sent from the        user equipment to the base station. The previously obtained        throughput is associated with the one or more previously        obtained pieces of information about a past scheduling and the        one or more previously obtained radio quality measures.

According to a second aspect of embodiments herein, the object isachieved by a user equipment configured to predict an availablethroughput for uplink data to be sent from the user equipment to a basestation over a radio link in a wireless communications network. Theavailable throughput is provided from the communications network to theuser equipment. The user equipment is configured to obtain aninformation about a past scheduling of the user equipment.

The user equipment is configured to obtain a radio quality measurerelated to the radio link.

The user equipment is configured to predict the available throughputbased on a relationship between the information about a past schedulingof the user equipment and one or more previously obtained pieces ofinformation about the past scheduling of the user equipment.

The user equipment is configured to predict the available throughputfurther based on a relationship between the radio quality measure andone or more previously obtained radio quality measures.

The user equipment is configured to predict the available throughputfurther based on a previously obtained throughput of uplink data sentfrom the user equipment to the base station. The previously obtainedthroughput is associated with the one or more previously obtained piecesof information about a past scheduling and the one or more previouslyobtained radio quality measures.

The user equipment predicts the available throughput based oninformation about the past scheduling of the user equipment. Since theinformation about the past scheduling of the user equipment is relatedto a cell load, the prediction of the available throughput is based on acell load. This leads to an improved prediction of the availablethroughput, which leads to improved utilisation of radio resources.

The prediction is further improved since the prediction is based on boththe information about the past scheduling of the user equipment, i.e.based on the cell load, and the radio quality measure.

The prediction is further improved since the user equipment predicts theavailable throughput based on: a relationship between the informationabout a past scheduling of the user equipment and one or more previouslyobtained pieces of information about the past scheduling of the userequipment; a relationship between the radio quality measure and one ormore previously obtained radio quality measures; a previously obtainedthroughput of uplink data sent from the user equipment to the basestation. For example, the user equipment may estimate the availablethroughput even during a period when the user equipment does not havedata in the uplink buffer.

An advantage with embodiments herein is that it is the user equipmentthat predicts or estimates the throughput for uplink data. For example,embodiments herein may be deployed efficiently without modifying thecurrent LTE architecture, and save computational resources at the basestation. The embodiments further save communication resources becausethey do not require communication overhead. In other words, the userequipment is capable of predicting the throughput for uplink datawithout receiving any special information from the network.

Embodiments herein enable accurate prediction of the user equipmentthroughput by making not only use of physical quantities like ChannelQuality Indicator (CQI) and rank but also cell load by processing thescheduling information of the user equipment. This prediction should bemore accurate than existing solutions.

Comparing to the approaches that probe the end-to-end to paths toestimate the maximum throughput, this approach is a more passiveapproach that do no generate unnecessary packets to the network.

BRIEF DESCRIPTION OF THE DRAWINGS

Examples of embodiments herein are described in more detail withreference to attached drawings in which:

FIG. 1 is a schematic block diagram illustrating embodiments of awireless communications network.

FIG. 2 is a flowchart depicting embodiments of a method in a userequipment.

FIG. 3 is a schematic block diagram illustrating embodiments of a userequipment.

FIG. 4 is a schematic block diagram illustrating further embodiments ofa method in a user equipment.

FIG. 5 is a schematic block diagram illustrating further embodiments ofa user equipment.

FIG. 6 is a schematic block diagram illustrating further embodiments ofa user equipment.

FIG. 7 is a schematic block diagram illustrating further embodiments ofa user equipment.

DETAILED DESCRIPTION

As part of developing embodiments herein, a problem will first beidentified and discussed.

Uplink Scheduling

Since LTE uses Orthogonal Frequency Division Multiplexing (OFDM)modulation, the role of the uplink scheduler is to dynamically assignOFDM resource blocks to the user equipments for uplink transmission.These resource blocks assignments comprises of both time and frequencyassignments.

Typically the uplink scheduling is performed at each Transmission TimeInterval (TTI), where the TTI refers to the duration of a transmissionon the radio link. To provide an optimal resource allocation thescheduler should take into account the difference in quality amongresource blocks. Indeed, each user equipment will have a differentchannel gain on different resource blocks and a resource block might bemore valuable for some user equipment than others.

When the user equipment has data in its uplink buffer to transmit in theuplink, it has to receive a resource grant from the base station. Thisresource grant typically comprises which OFDM resource blocks the userequipment is authorized to use in the next TTI. There may be a delaybetween the request for grant from the user equipment and the actualgrant from the base station. If many user equipments are currentlyrequesting resource blocks, it is possible that a specific userequipment is not scheduled during several TTI.

There exist many types of scheduler depending on the goals of a providerof a wireless communications network. One possibility is to maximize aspecific metric with respect to some constraints. For example ascheduler maximizing the sum rate with some power constraint may bederived using a water-filling algorithm. In some common scheduleralgorithms are:

-   -   Round-Robin Scheduler: This scheduler algorithm distributes the        same number of resource blocks to all user equipment. It is        simple but it may lead to very unfair resource allocation, where        the user equipment at the cell edge get the same number of        resources as the user equipment at the center of the cell,        resulting in a large difference in terms of throughput.    -   Proportional fair scheduler: This scheduler addresses the        weakness of the Round-Robin scheduler, i.e., the fairness. This        scheduler allocates resources to user equipment according to        priority mechanism. The priority of a user equipment is        inversely proportional to the amount of data the user equipment        has transmitted in previous communication phases. That way the        scheduler algorithm makes sure that all user equipments are        treated fairly in terms of throughput and not allocated        resources.

Such a channel dependent scheduling is typically done in the downlinkbecause it is relatively simple for a user equipment to measure itsdownlink quality. In the uplink however it requires the user equipmentto transmit a Sounding Reference Signal (SRS) to the base station thatwill then estimate the uplink quality for the user equipment. Thismethod may be costly in terms of resource overhead. The periodicity ofthe SRS may be varied from 2 ms, for very precise quality prediction, toabout 160 ms, for looser prediction but smaller overhead.

To avoid this problem of overhead, but still providing a way for thescheduler to give more resources to a user equipment at the cell edge itis possible, instead of having a channel based scheduler, to use MediumAccess Control (MAC) messages from the user equipment to indicate theuplink buffer status. In that way the scheduler may identify a userequipment that requires more resources than others. The MAC messages maybe sent over the normal Physical Uplink Shared Channel (PUSCH) if theuser equipment has got a scheduling grant but may also be transmittedwith L1/L2 control signaling over the Physical Uplink Control Channel(PUCCH).

Radio Quality Measure

As mentioned above, in a case where a scheduler uses channel qualityinformation to assign resource blocks to the user equipments, all userequipments have to send SRSs to the base station so that their uplinkchannel quality may be estimated. Based on the Signal to Interferenceand Noise Ratio (SINR) of the SRS the base station calculates a channelquality indicator—an integer value—that points to a row on theModulation and Coding Scheme (MCS). Typically if the channel quality isgood the user equipment will use a high order modulation scheme with ahigh coding rate and the opposite otherwise.

Another important factor that highly influences the quality ofcommunication of a user equipment is its rank. In a multiple antennacommunications network, the rank of a user equipment is the rank of thechannel matrix from the user equipment to the base station. In a typical2 by 2 Multiple Input Multiple Output (MIMO) communication the rank maybe 1 or 2. A rank of 1 means that the user equipment may send one streamat a time. A rank of 2 allows the user equipment to transmit twoorthogonal streams in parallel, resulting in a higher throughput. Therank is estimated based on the SRS at the base station.

When a user equipment wants to transmit data over the uplink, in orderto estimate the actual throughput that it will get, it only has accessto a CQI value, which is basically a derivate of the SINR at the basestation. However, the final throughput that the user equipment will getis not only depending on its SINR but also highly on the cell load. Inother words if there are many other user equipments in the cell, thefinal throughput of a specific user equipment will be much lower.

In the current system, in LTE, it is possible for the base station togather this information and broadcast it to all user equipments. This,however, represents a large communication overhead since thisinformation would need to be transmitted very frequently. Moreover theexisting system would need to be modified to include these load reportsin the system architecture. It is therefore preferable, if theprediction happens at the user equipment side. In this way the cell loadis estimated directly by the user equipment without help from the basestation.

Of course such a throughput prediction may be processed entirely at thebase station for all user equipments since the SINR and the cell load ispresent at the base station. However a base station-based solution,which requires the help of the wireless communications network, has manydrawbacks such as:

-   -   The complexity of the final solution is much higher; there is a        need to develop specific exchange protocols and the current        system architecture must be changed.    -   It increases the computational cost at the base station    -   It consumes more communication resources, i.e. high        communication overhead

One solution to estimate bandwidth in the end device, e.g. in the userequipment, is to actively probe the network. In that solution, the enddevice puts packets in a queue so that the end device always havesomething to send, and the estimated throughput is based on packet size,transmission time, receive time, etc.

This has several problems. First, the end device, e.g. the userequipment, has to transmit at maximum speed in order to obtain theprediction, which wastes network resources. Second, this approachrequires both end hosts to work jointly, as it requires receiver loggingas well. This works well in some scenarios, but may have problems if theend device does not have access to the server's receiver log.

Embodiments herein estimate network load and potential user equipmentthroughput in the user equipment, without receiving any informationabout load or throughput from the network.

Based on the scheduling frequencies and the radio quality measure, theUE may estimate the load and the available throughput in the cell. Thisprocess may be done either separately or jointly.

In embodiments herein the network load is estimated based on thescheduling frequencies from the network when the user equipment has datain the uplink buffer. In general, if there are few user equipments inthe cell, the user equipment is scheduled much more often than whenthere are more user equipments.

The cell load is estimated during the periods when the user equipmenthas data in the uplink buffer. In addition to the estimated cell load,the user equipment analyses its radio quality measures, for example CQIand rank in LTE systems. Based on the estimated cell load, the radioquality measures, and a previously obtained model, relating the cellload and the radio quality measures to the throughput, the userequipment predicts, or in other words estimates, the throughput in thegiven cell even during the periods when the user equipment does not havedata in the uplink buffer. The model may be obtained by mapping previouscell loads and previous radio quality measures to previous throughputs,for example by machine learning. The previous cell loads and theprevious radio quality measures may be referred to as training samplesas they may be used to train the model. As new cell loads, radio qualitymeasures and throughputs are obtained the model may be updated, forexample by machine learning. The output from the machine learning may beused to predict future values of throughput by analysis of trends.

The load prediction and the throughput prediction may be used in severaldifferent ways. Firstly, this information may be shown to a user on adisplay of the user equipment. Then the user may use this information tofurther decide if the user wants to start a new service or not.Secondly, this information may be made available to the services runningin the user equipment, which may benefit from knowing the network loadand/or the available throughput for uplink data. For example, thenetwork load and the available throughput for the uplink data from theuser equipment may be estimated to adapt the resolution of a streamedvideo, for communication services like Skype, for the user equipmentbased on the expected performance.

FIG. 1 depicts a wireless communications network 100 in whichembodiments herein may be implemented. The wireless communicationsnetwork 100 may for example be an LTE network.

The wireless communications network 100 comprises a base station 111.The base station may also be referred to as a NodeB, an evolved Node B(eNB, eNode B), or any other network unit capable of communicating witha user equipment within a cell served by the base station depending e.g.on the radio access technology and terminology used.

The base station 111 may serve a cell 115. The base station 111communicates with user equipments in the first cell 115, such as a userequipment 121, also referred to as a UE, a terminal or a wirelessdevice. The communication is performed over a radio link.

The user equipment 131 may e.g. be a mobile terminal or a wirelessterminal, a mobile phone, a computer such as e.g. a laptop, a PersonalDigital Assistants (PDAs) or a tablet computer, sometimes referred to asa surf plate, with wireless capability, or any other radio network unitscapable to communicate over a radio link in a wireless communicationsnetwork. Please note the term user equipment used in this document alsocovers other wireless devices such as Machine to Machine (M2M) devices,even though they do not have any user.

The user equipment 121 may comprise a display 122.

Embodiments of a method in the user equipment 121 for predicting anavailable throughput for uplink data to be sent from the user equipment121 to the base station 111 over the radio link in the communicationsnetwork 100 will now be described with reference to a flowchart depictedin FIG. 2. As mentioned above, the available throughput is provided bythe communications network 100 to the user equipment 121.

The method comprises the following actions, which actions may be takenin any suitable order.

FIG. 3 further illustrates the system architecture of the embodimentsherein. The system architecture may for example comprise three modules:a scheduling frequency module 301, a radio quality module 302, and athroughput prediction module 304.

Action 201

Since the cell load of the cell 115 is important for the availablethroughput, the user equipment 121 obtains information related to thecell load of the cell 115 as input to the prediction of the availablethroughput. The input to the prediction of the available throughput mayfor example be a frequency of scheduling of the user equipment 121.Thus, the user equipment 121 obtains an information about a pastscheduling of the user equipment 121. The network load may be estimatedbased on the scheduling frequencies from the base station 111 during thetime periods when the user equipment 121 has data in an uplink buffer.In general, if there are few user equipments in the cell, the userequipment is scheduled much more often than when there are more userequipments.

The obtaining of the information about a past scheduling may compriseobtaining for each TTI for which the user equipment 121 had uplink datain an uplink buffer, any combination out of:

-   -   a number of physical resource blocks that are scheduled for the        user equipment 121 for a priority class;    -   a total number of physical resource blocks in the cell 115; and    -   an information about a buffer status of the user equipment 121.        The information about the buffer status comprises an amount of        uplink data per priority class.

For example, based on previous uplink transmissions, the user equipment121 logs the TTIs when the user equipment 121 has data in its uplinkbuffer, if the user equipment 121 is scheduled and the amount ofresources in physical resource blocks the user equipment 121 isscheduled in each TTI. The logging of uplink scheduling is shown in FIG.4. In FIG. 4 for each TTI the scheduling information is shown, and thescheduling may take four different states for each TTI.

-   -   No data in buffer means that there are currently no data in the        uplink buffer to send, of course no data need to be transmitted.    -   Waiting for first uplink transmission means that there are data        in the uplink buffer, but the data is not scheduled and has        never been scheduled before for this data chunk. It is still        waiting for the first uplink grant from the cell. This mode does        not suggest that the base station 111 is busy serving other user        equipments. It may be the normal uplink grant delay where the        base station is processing the scheduling request.    -   Data in buffer, scheduled means that the data is being scheduled        in this TTI. In this state, it is also good to know the        percentage and/or amount of radio resources that is scheduled. A        percentage number is shown in FIG. 4 indicating the amount of        physical resources scheduled.    -   Data in buffer, no scheduling means that the data chunk has been        scheduled before, and there are still data in the uplink buffer        of the user equipment. But the data is not scheduled in this        TTI. The cell 115 is serving other user equipment in this TTI.        The scheduling frequency module 301 may perform action 201.

Action 202

The user equipment 121 further obtains a radio quality measure relatedto the radio link. The radio quality measure will be used as input tothe prediction of the available throughput. In LTE networks the radioquality measure may be any one or more out of a CQI value and atransmission rank.

A basic radio quality estimation protocol will now be outlined.Typically a scheduling is processed on a TTI basis, such as 1 ms, butthe reporting of the CQI and Rank values may be on a larger time scale,i.e., less frequent. T_(r) may represent the estimation period used torequest CQI and Rank information. The estimation process may use thefollowing steps

-   -   Each estimation period the user equipment 121 requests its CQI        and Rank information. To do so it transmits a Sounding Reference        Signal (SRS) to the base station 111. This signal is known in        advance at the base station 111.    -   The base station 111 receives the SRS.    -   The base station 111 processes the SRS and extracts SINR and        Rank information from it.    -   The base station 111 converts the SINR into a CQI value using a        MCS mapping.    -   The base station 111 reports the CQI and the Rank to the user        equipment 121.    -   The user equipment 121 needs to have a CQI and Rank value for        each TTI. If the estimation period, T_(r), is longer than a TTI,        then the user equipment 121 stores the CQI value and the Rank        locally and uses at each TTI the newest stored value.

Action 203

Based on the scheduling frequencies and the radio quality measure, theuser equipment 121 may predict or estimate the load and the availablethroughput in the cell 115. This process may be done either separatelyor jointly.

In some embodiments where the user equipment 121 predicts the load andthe available throughput in the cell 115 separately the user equipment121 comprises a load prediction module 501 and the throughput predictionmodule 502 as illustrated in FIG. 5.

In this optional action, the cell load of the cell 115 is predicted.This load may in turn be used as input to the prediction of theavailable throughput. Thus, in some embodiments the user equipment 121predicts a current and/or future cell load of the cell 115 based on theinformation about a past scheduling of the user equipment 121.

The predicting of the current and/or future cell load of the cell 115may further be based on:

-   -   a relationship between the information about a past scheduling        of the user equipment 121 and the one or more previously        obtained pieces of information about the past scheduling of the        user equipment 121; and    -   the previously obtained cell load. The previously obtained cell        load is associated with the one or more previously obtained        pieces of information about a past scheduling.

The previously obtained pieces of information about the past schedulingof the user equipment 121 may for example be related to a trainingsample. It may also be related to several training samples. The pastscheduling that the previously obtained piece of information refers tomay be different from the past scheduling that the information about apast scheduling refers to. For example, the information about a pastscheduling may relate to a first past scheduling of the user equipment121, while the previously obtained pieces of information about a pastscheduling may relate to a second past scheduling of the user equipment121. The second past scheduling may be a scheduling that has taken placeat an earlier time than the first past scheduling.

Referring to FIG. 5, the load prediction module 501 gathers thescheduling frequency information coming from the scheduling frequencymodule 301. The load prediction module 501 may be composed of threesub-modules.

A load training sub-module 5011: This sub-module takes a subset of thescheduling frequency information and maps this subset of data to apreviously obtained cell load, e.g. a measured cell load, or apreviously computed cell load, which is computed from the one or morepreviously obtained pieces of information about a past scheduling.Machine learning or other mathematical numerical methods may be used forthis purpose. Examples of algorithms are linear regression and neuralnetworks.

The input of the training sub-module may be a training data set, i.e. avector of scheduling frequency information as described above. The sizeof this vector depends on the number of TTIs that are used for thetraining dataset in machine learning to learn the cell load. A largevector may provide a better fit with more accurate prediction result butrequires the user to wait longer. The “no data in buffer”-cases areextracted and the three other cases are kept for learning. Indeed if amachine learning system has enough “data in buffer”-samples they are themost relevant for estimating the load. However, if the machine learningsystem has few of these samples and many “waiting for first uplinktransmission”-samples it may mean that the user equipment 121 cannot getany scheduling grant because the network is very loaded.

The output of the training sub-module is a model that will allowestimating the cell load of the cell 115 from the scheduling frequency.The cell load may be characterized by different metrics. For example itmay be characterized by a total cell throughput or the number of activeusers in the cell 115.

A load test sub-module 5012: This sub-module tests the model developedby the training sub-module on another data subset of the schedulingfrequency information. The load test sub-module then estimates thecorrectness of the developed model. Possibly, if the correctness is tooweak, the load test sub-module may provide feedback, such as anestimation error, to the training sub-module.

A load prediction sub-module 5013: When the training phase isterminated, new samples of scheduling frequency information is processedby the load prediction sub-module. This sub-module applies the modeldeveloped in the training phase to each new test sample.

Action 204

The user equipment 121 predicts the available throughput based on:

-   -   the relationship between the information about a past scheduling        of the user equipment 121 and one or more previously obtained        pieces of information about the past scheduling of the user        equipment 121;    -   a relationship between the radio quality measure and one or more        previously obtained radio quality measures; and    -   a previously obtained throughput of uplink data sent from the        user equipment 121 to the base station 111. The previously        obtained throughput is associated with the one or more        previously obtained pieces of information about a past        scheduling and the one or more previously obtained radio quality        measures.

In some embodiments where the user equipment 121 predicts the load andthe available throughput in the cell 115, the available throughput isfurther predicted based on a relationship between the predicted currentand/or future cell load of the cell 115 and a previously obtained cellload.

In other words, in the case of separate load and throughput prediction,the throughput prediction is directly based on the predicted cell load,which predicted cell load in turn is based on the information about apast scheduling of the user equipment 121.

Thus, the throughput prediction module 303, 502 gathers both the loadprediction from the load prediction module 501 and the radio qualitymeasure, such as CQI and Rank information, from the radio quality module302. It may be composed of three sub-modules.

The throughput training sub-module 5021: This sub-module takes a subsetof input information and maps this subset of data to a measuredthroughput of the user equipment 121. Machine learning or othermathematical numerical methods may be used for this purpose. Examples ofalgorithms are linear regression or neural networks.

The input information of the throughput training sub-module 5021 is thepreviously obtained cell load, which may be a predicted cell load, andone or more previously obtained radio quality measures, such as apreviously obtained CQI value and a previously obtained Rank value.

The output of the training sub-module is a model that will allow forestimating the available uplink throughput.

The throughput test sub-module 5022: This sub-module tests the modeldeveloped in the throughput training sub-module on another data subsetof the cell load and the radio quality measure, and estimate thecorrectness of the developed model. Possibly, if the correctness is tooweak, the throughput test sub-module may provide feedback, such as anestimation error, to the throughput training sub-module.

The throughput prediction sub-module 5023: When the training phase isterminated, each new set of the predicted cell load, and radio qualitymeasure, such as CQI and Rank values, is processed by the throughputprediction sub-module. This sub-module applies the model developed inthe training phase to each new data set.

An advantage of processing the load prediction and the throughputprediction separately is that the predicted load may be reused by adifferent estimation or prediction module.

In some embodiments wherein the user equipment 121 predicts the load andthe available throughput in the cell 115 jointly, the user equipment 121comprises the throughput prediction module 301, 601 as illustrated inFIG. 6.

The throughput prediction module 303, 601 gathers the schedulingfrequency information from the scheduling frequency module 301 and theCQI and Rank information from the radio quality module 302. It may becomposed of three sub-modules.

A joint throughput training module 6011: this sub-module takes a subsetof input information and maps this subset of data to a measuredthroughput of the user equipment 121. Machine learning or othermathematical numerical methods may be used for this purpose. Examples ofalgorithms are linear regression or neural networks.

The input of the joint throughput training sub-module is the schedulingfrequency information, and the radio quality measure, such as the CQIvalue and the Rank value.

The output of the training sub-module is a model that will allow forestimating the available uplink throughput.

A joint throughput test module 6012: this sub-module tests the modeldeveloped in the throughput training module on another data subset ofthe scheduling frequency information and estimates the correctness ofthe developed model. Possibly, if the correctness is too weak, the jointthroughput test module may provide feedback, such as an estimationerror, to the joint throughput training sub-module.

A joint throughput prediction module 6013: When the training phase isterminated, each new set of the scheduling frequency information, CQIand Rank values is processed by the throughput prediction sub-module.This sub-module applies the model developed in the training phase toeach new data set.

An advantage of the joint load and throughput prediction is that thejoint learning may provide a better estimation since a correlationbetween the scheduling frequency information, the CQI and the Rankvalues may be used.

Action 205

When the user equipment 121 has predicted the cell load of the cell 115and/or predicted the available throughput for uplink data, the userequipment 121 may display any one or more out of: the predictedavailable throughput, and the predicted current and/or future cell loadof the cell 115 on the display 122 of the user equipment 121. This maybe done in order to receive an input, as described in action 206,related to a service that is affected by the available throughput foruplink data. An advantage with this is that the user equipment 121 mayoptimize a quality of service based on the input received, as describedin action 207. For example, the input may be a command to start a newservice or not, or to proceed with downloading of data immediately or towait with downloading data for a period of time.

Action 206

In some embodiments the user equipment 121 receives an input in responseto the displayed predicted cell load of the cell 115 and/or thedisplayed predicted available throughput for uplink data. The input maybe received from a user of the user equipment.

Action 207

The user equipment 121 optimizes a quality of service based on any oneor more out of the predicted available throughput and the predictedcurrent and/or future load.

The optimization of the quality of service may further be based on theinput received in action 206. For example, the user equipment 121 mayadapt the resolution of a streamed video, for communication serviceslike Skype, based on any one or more out of the predicted availablethroughput and the predicted current and/or future load, or in otherwords based on the expected performance of the service.

Action 208

In order to obtain training data for future predictions the userequipment 121 may obtain an actual throughput of uplink data sent to thebase station 111 and an actual cell load of the cell 115. In otherwords, the user equipment 121 may obtain any one or more out of: athroughput of uplink data sent to the base station 111, and a cell loadof the cell 115. The obtained cell load is associated with the obtainedthroughput of the uplink data sent to the base station 111.

The obtained throughput and the obtained cell load may be used e.g. bythe training sub-modules. In future predictions the obtained throughputof uplink data may be used as the previously obtained throughput, asdescribed above in action 204, and the obtained cell load of the cell115 may be used as the previously obtained cell load, as described abovein action 203.

Action 209

In some embodiments the user equipment 121 stores any one or more outof: the obtained information about the scheduling of the user equipment121, the obtained radio quality measure, the throughput of the uplinkdata sent to the base station 111, and the cell load of the cell 115.For example, the user equipment 121 may store the obtained informationabout the scheduling of the user equipment 121 together with the cellload of the cell 115 in order to have training data for prediction ofthe cell load. In another example the user equipment 121 may store theobtained information about the scheduling of the user equipment 121together with the obtained radio quality measure, and the throughput ofthe uplink data sent to the base station 111 in order to have trainingdata for prediction of the available throughput.

To perform the method actions to predict an available throughput foruplink data to be sent from the user equipment 121 to the base station111 over the radio link in the communications network 100 describedabove in relation to FIG. 2, the user equipment 121 comprises thefollowing arrangement depicted in FIG. 7. As mentioned above, theavailable throughput is provided by the communications network 100 tothe user equipment 121.

The user equipment 121 is configured to, e.g. by means of the schedulingfrequency module 301, 710 configured to, obtain the information about apast scheduling of the user equipment 121.

The user equipment 121 may further be configured to obtain theinformation about the past scheduling by being configured to obtain foreach TTI for which the user equipment 121 had uplink data in the uplinkbuffer, any combination out of:

-   -   the number of physical resource blocks that are scheduled for        the user equipment 121 for the priority class;    -   the total number of physical resource blocks in the cell 115;        and    -   the information about the buffer status of the user equipment        121. The information comprises the amount of uplink data per        priority class.

The scheduling frequency module 301, 710 may be comprised in a processor720 in the user equipment 121.

The user equipment 121 is further configured to, e.g. by means of theradio quality module 301, 730 configured to, obtain a radio qualitymeasure related to the radio link.

The radio quality measure may be any combination out of a CQI value anda transmission rank.

The radio quality module 301, 730 may be comprised in the processor 720in the user equipment 121.

The user equipment 121 is further configured to, e.g. by means of thethroughput prediction module 303, 502, 601, 740 configured to, predictthe available throughput based on:

-   -   the relationship between the information about a past scheduling        of the user equipment 121 and the one or more previously        obtained pieces of information about the past scheduling of the        user equipment 121;    -   the relationship between the radio quality measure and the one        or more previously obtained radio quality measures; and    -   the previously obtained throughput of uplink data sent from the        user equipment 121 to the base station 111. The previously        obtained throughput is associated with the one or more        previously obtained pieces of information about a past        scheduling and the one or more previously obtained radio quality        measures.

In some embodiments the user equipment 121 is further configured to,e.g. by means of the throughput prediction module 303, 502, 601, 740configured to, obtain the throughput of the uplink data sent to the basestation 111.

The throughput prediction module 303, 502, 601, 740 may be comprised inthe processor 720 in the user equipment 121.

In some embodiments the user equipment 121 is arranged to be located inthe cell 115 served by the base station 111. Then the user equipment 121is further configured to, e.g. by means of the load prediction module501, 750 configured to:

-   -   predict a current and/or future cell load of the cell 115 based        on the information about a past scheduling of the user equipment        121, and    -   predict the available throughput, further based on a        relationship between the current and/or future cell load of the        cell 115 and a previously obtained cell load.

The user equipment 121 may further be configured to, e.g. by means ofthe load prediction module 501, 750 configured to, predict the currentand/or future cell load of the cell 115 further based on:

-   -   the relationship between the information about the past        scheduling of the user equipment 121 and the one or more        previously obtained pieces of information about the past        scheduling of the user equipment 121; and    -   the previously obtained cell load. The previously obtained cell        load is associated with the one or more previously obtained        pieces of information about a past scheduling.

In some embodiments the user equipment 121 may further be configured to,e.g. by means of the load prediction module 501, 750 configured to,obtain the cell load of the cell 115. The load is associated with thethroughput of the uplink data sent to the base station 111.

The load prediction module 501, 750 may be comprised in the processor720 in the user equipment 121.

In some embodiments the user equipment 121 is further configured to,e.g. by means of an optimization module 760 configured to, optimize thequality of service based on the prediction of the available throughput.

The user equipment 121 may be further configured to, e.g. by means ofthe optimization module 760 configured to, optimize the quality ofservice further based on the input.

The optimization module 780 may be comprised in the processor 720 in theuser equipment 121.

The user equipment 121 may further be configured to, e.g. by means of adisplay module 770 configured to, display any one or more out of: thepredicted available throughput, and the predicted current and/or futurecell load of the cell 115 on the display 122, 775 of the user equipment121.

The display module 770 may be the processor 720 in the user equipment121.

In some embodiments the user equipment 121 is further configured to,e.g. by means of an input module 780 configured to, receive an input.

The input module 780 may be comprised in the processor 720 in the userequipment 121.

The user equipment 121 may further be configured to, e.g. by means of amemory 790 configured to, store any combination of the obtainedinformation about the scheduling of the user equipment 121, the obtainedradio quality measure, the throughput of the uplink data sent to thebase station 111 and the cell load of the cell 115. The memory 790comprises one or more memory units. The memory 790 is further configuredto store the input, and configurations and applications to perform themethods herein when being executed in the user equipment 121.

The embodiments herein to predict an available throughput for uplinkdata to be sent from the user equipment 121 to the base station 111 overthe radio link in the communications network 100 may be implementedthrough one or more processors, such as the processor 720 in the userequipment 121 depicted in FIG. 7, together with computer program codefor performing the functions and actions of the embodiments herein. Theprogram code mentioned above may also be provided as a computer programproduct, for instance in the form of a data carrier carrying computerprogram code for performing the embodiments herein when being loadedinto the user equipment 121. One such carrier may be in the form of a CDROM disc. It is however feasible with other data carriers such as amemory stick. The computer program code may furthermore be provided aspure program code on a server and downloaded to the user equipment 121.

Those skilled in the art will also appreciate that the schedulingfrequency module 301, 710, the radio quality module 302, 730, thethroughput prediction module 303, 502, 601, 740, the load predictionmodule 501, 750, the optimization module 760, the display module 770,and the input module 780 described above may refer to a combination ofanalog and digital circuits, and/or one or more processors configuredwith software and/or firmware, e.g. stored in a memory, that whenexecuted by the one or more processors such as the processor 720 performas described above. One or more of these processors, as well as theother digital hardware, may be included in a single Application-SpecificIntegrated Circuit (ASIC), or several processors and various digitalhardware may be distributed among several separate components, whetherindividually packaged or assembled into a System-on-a-Chip (SoC).

When using the word “comprise” or “comprising” it shall be interpretedas non-limiting, i.e. meaning “consist at least of”.

The embodiments herein are not limited to the above described preferredembodiments. Various alternatives, modifications and equivalents may beused. Therefore, the above embodiments should not be taken as limitingthe scope, which is defined by the appending claims.

The invention claimed is:
 1. A method in a user equipment for estimatingan available throughput for uplink data to be sent from the userequipment to a base station over a radio link in a wirelesscommunications network, wherein the available throughput is provided bythe wireless communications network to the user equipment, the methodcomprising: obtaining information about a past scheduling of the userequipment; obtaining a radio quality measure related to the radio link;and estimating the available throughput based on: a relationship betweenthe information about a past scheduling of the user equipment and one ormore previously obtained pieces of information about the past schedulingof the user equipment; a relationship between the radio quality measureand one or more previously obtained radio quality measures; and apreviously obtained throughput of uplink data sent from the userequipment to the base station, wherein the previously obtainedthroughput is associated with the one or more previously obtained piecesof information about the past scheduling and the one or more previouslyobtained radio quality measures; and optimizing a quality of servicebased on one or more of the estimated available throughput and estimatedcurrent and future cell loads.
 2. The method according to claim 1,wherein the obtaining of the information about a past schedulingcomprises obtaining for each Transmission Time Interval, TTI, for whichthe user equipment had uplink data in an uplink buffer, any combinationof: a number of physical resource blocks that are scheduled for the userequipment for a priority class; a total number of physical resourceblocks in a cell where the user equipment is located; and informationabout a buffer status of the user equipment, wherein the informationabout the buffer status comprises an amount of uplink data per priorityclass.
 3. The method according to claim 1, wherein the radio qualitymeasure is one or more of a Channel Quality Information (CQI) value anda transmission rank.
 4. The method according claim 1, wherein the userequipment is located in a cell served by the base station, and whereinthe method further comprises estimating the current and/or future cellload of the cell based on the information about a past scheduling of theuser equipment, and wherein the estimation of the available throughputis further based on a relationship between the current and/or futurecell load of the cell and a previously obtained cell load.
 5. The methodaccording to claim 4, wherein the estimation of the current and/orfuture cell load of the cell is further based on: the relationshipbetween the information about a past scheduling of the user equipmentand the one or more previously obtained pieces of information about thepast scheduling of the user equipment; and the previously obtained cellload, wherein the previously obtained cell load is associated with theone or more previously obtained pieces of information about a pastscheduling.
 6. The method according to claim 4, further comprising:displaying one or more of: the estimated available throughput, and theestimated current and/or future cell load of the cell on a display ofthe user equipment; and receiving an input, wherein the optimizing ofthe quality of service is further based on the input.
 7. The methodaccording to claim 1, further comprising: obtaining one or more of: athroughput of uplink data sent to the base station, and a cell load of acell where the user equipment is located, wherein the cell load isassociated with the throughput of the uplink data sent to the basestation; and storing one or more of: the obtained information about thescheduling of the user equipment, the obtained radio quality measure,the throughput of the uplink data sent to the base station, and the cellload of the cell.
 8. A user equipment configured to estimate anavailable throughput for uplink data to be sent from the user equipmentto a base station over a radio link in a wireless communicationsnetwork, wherein the available throughput is provided from the wirelesscommunications network to the user equipment, the user equipmentcomprising: communication circuitry configured to communicate with thebase station over the radio link; and processing circuitry operativelyassociated with the communication circuitry and configured to: obtaininformation about a past scheduling of the user equipment; obtain aradio quality measure related to the radio link; and estimate theavailable throughput based on: a relationship between the informationabout a past scheduling of the user equipment and one or more previouslyobtained pieces of information about the past scheduling of the userequipment; a relationship between the radio quality measure and of oneor more previously obtained radio quality measures; and a previouslyobtained throughput of uplink data sent from the user equipment to thebase station, wherein the previously obtained throughput is associatedwith the one or more previously obtained pieces of information about thepast scheduling and the one or more previously obtained radio qualitymeasures; and optimize a quality of service based on one or more of theestimated available throughput and Ma estimated current and future cellloads.
 9. The user equipment according to claim 8, wherein theprocessing circuitry is configured to obtain the information about apast scheduling by being configured to obtain for each Transmission TimeInterval (TTI) for which the user equipment had uplink data in an uplinkbuffer, any combination out of: a number of physical resource blocksthat are scheduled for the user equipment for a priority class; a totalnumber of physical resource blocks in a cell where the user equipment islocated; and information about a buffer status of the user equipment,wherein the information about the buffer status comprises an amount ofuplink data per priority class.
 10. The user equipment according toclaim 8, wherein the radio quality measure is any combination of aChannel Quality Information (CQI) value and a transmission rank.
 11. Theuser equipment according claim 8, wherein the user equipment is arrangedto be located in a cell served by the base station and the processingcircuitry is configured to: estimate the current and/or future cell loadof the cell based on the information about a past scheduling of the userequipment; and estimate the available throughput, further based on arelationship between the current and/or future cell load of the cell anda previously obtained cell load.
 12. The user equipment according toclaim 11, wherein the processing circuitry is configured to estimate thecurrent and/or future cell load of the cell further based on: therelationship between the information about a past scheduling of the userequipment and the one or more previously obtained pieces of informationabout the past scheduling of the user equipment; and a previouslyobtained cell load, which previously obtained cell load is associatedwith the one or more previously obtained pieces of information about apast scheduling.
 13. The user equipment according to claim 11, whereinthe processing circuitry is configured to: display one or more of: theestimated available throughput, and the estimated current and/or futurecell load of the cell on a display of the user equipment; receive aninput; and optimize the quality of service further based on the input.14. The user equipment according to claim 8, wherein the processingcircuitry is configured to: obtain one or more of: a throughput of anuplink data sent to the base station, and a cell load of a cell wherethe user equipment is located, wherein the cell load is associated withthe throughput of the uplink data sent to the base station; and storeany combination of the obtained information about the scheduling of theuser equipment, the obtained radio quality measure, the throughput ofthe uplink data sent to the base station and the cell load of the cell.